Document data structure and method for integrating broadcast television with web pages

ABSTRACT

Described are a method and apparatus for incorporating broadcast television into Web pages. Broadcast television can be embedded into Web pages using, for example, a “tv:” attribute in conjunction with common HTML tags. Within the “tv:” attribute, a Web-page author can reference a TV station by channel number, network, or broadcast call letters. HTML documents are parsed to recover both the conventional tags and tags that include TV attributes. The resulting Web pages display the identified broadcast TV in a frame specified by the TV attribute. One embodiment supports the presentation of television in the background of an HTML document. In that embodiment, HTML tags corresponding to overlying HTML content are provided with an attribute that defines a level of transparency from zero to one-hundred percent. The transparency attribute allows content providers to overlay any type of HTML information over a broadcast television show without completely obscuring the underlying show. This aspect of the invention employs a z attribute that can be used to specify the relative position of broadcast television and overlying HTML content.

CROSS-REFERENCE TO RELATED APPLICATIONS

The present application is a continuation application of U.S. patentapplication Ser. No. 09/467,764 filed Dec. 20, 1999, entitled “DocumentData Structure and Method for Integrating Broadcast Television with WebPages”, which is incorporated herein by reference.

BACKGROUND OF THE INVENTION

1. The Field of the Invention

The invention relates generally to the integration of broadcasttelevision programming with other multimedia content. More specifically,the invention relates to methods and apparatus for integrating broadcasttelevision images with pages available over the Internet.

2. Background and Related Art

The Internet is a worldwide collection of networks and gateways. TheInternet includes a backbone of high-speed data communication linesbetween major nodes or host computers, consisting of thousands ofcommercial, government, educational, and other computer systems. TheWorldwide Web (the Web) is composed of a vast number of uniquelyaddressed “pages” of information available on the Internet. The uniqueaddresses, conventionally known as Universal Resource Identifiers(URIs), make it easy to establish links between related pages, andbetween pages and other information resources on the Web. Common typesof URIs include URLs (Universal Resource Locators) and URNs (UniversalResource Names).

Information on a given page may be linked to related information on asecond page by providing a “hyperlink,” or “link,” specifying the URI ofthe second page. Such links are typically represented as highlightedtext or graphic representations that may be selected using a mouse-typepointer (a “mouse”). Users move between pages on the Internet byselecting links according to the user's interest. This method of movingfrom page to page on the Internet in search of information is commonlyreferred to as “surfing the Net.”

The Web has become a popular resource for information relating to almostany subject. The growth of this popularity has been greatly enhanced bythe development of standard generalized markup languages (SGML), inparticular the hypertext markup language (HTML) and, more recently, theExtensible Markup Language (XML). Markup languages define the format ofWeb documents by establishing the syntax and placement of special,embedded instructions that tell Web browsers how to display the contentsof a document. HTML and XML also interconnect Web pages and otherinformation resources using hyperlinks. HTML is presently the mostpopular markup language used to author Web content. The followingdiscussion therefore focuses on HTML, although the concepts discussedapply equally to other markup languages.

FIG. 1 (prior art) is a flowchart 100 depicting how a conventionalbrowser or Internet terminal renders a stream of HTML data 110 todisplay a Web page 120. Beginning at step 130, a software object calledan HTML parser parses HTML data 110. The term “software object” is usedhere in the context of object-oriented programming, and refers to avariable comprising both routines and data that is treated as a discreteentity.

Parsing HTML data 110 produces a series of HTML tags and attributes 140.Tags are code that identifies an element in a document, such as aheading or a paragraph, for the purposes of formatting, indexing, andlinking information in the document. Attributes are name-value pairswithin a tagged element that modify certain features of that element.These features include color, size, position, and the size and style offonts.

Next, a software object typically referred to as a “document builder”150 interprets tags and attributes 140. The interpretation results inthe creation of a document data structure 160 that contains all of theformatting and content information required to render HTML page 120. Thecontent information can include links to other information resources,such as video, images, and other Web pages to be displayed within theconfines of HTML page 120. Finally, a graphics processor and relatedsoftware interpret data structure 160 to render the image of HTML page120 (the HTML document) for display.

Internet terminals, such as those pioneered by WebTV Networks, Inc.,provide Web access without a traditional personal computer. Internetterminals (also commonly referred to as set-top boxes) provide Webaccess using an ordinary television (TV) set as a display and a remotecontrol or wireless keyboard for user input. These Internet terminalsallow viewers to view Web content, watch television, or simultaneouslydo both by displaying broadcast TV within a window of a Web page. TVviewed within a Web page is not part of the HTML document defining thepage, but must be incorporated separately using dedicated software.While the results are acceptable, there is nevertheless a need for asimpler method of merging HTML and broadcast TV content.

On occasion, it is desirable to display graphic images over broadcastvideo without completely obscuring the video. Such a mode of operationpermits the viewer to continue to watch, for example, a favoritetelevision program, while nevertheless monitoring the progress of e.g. abreaking news story or a live game score. Conventional Internetterminals, such as that available from WebTV, Inc., offer thisfunctionality. However, the melding of HTML content and broadcasttelevision is currently a complex process. Further, conventionalInternet terminals do not support the use of television in thebackground of an HTML document. The need for a simple means of combiningHTML and broadcast TV content therefore encompasses a need for a methodthat supports broadcast TV background for Web pages.

BRIEF SUMMARY OF THE INVENTION

A method and system are described for incorporating broadcast televisioninto Web pages. In accordance with the invention, broadcast TV can beembedded into Web pages using, for example, a “tv:” URI in conjunctionwith common HTML tags, such as the image tag “<IMG>,” the object tag“<OBJECT>,” and the background tag “<BACKGROUND>.” Within the “tv:”attribute, a Web-page author can reference a broadcast TV station bychannel number, network, or broadcast call letters. In accordance withthe invention, HTML documents are parsed to recover both theconventional tags and tags that include TV attributes. The resulting Webpages display the identified broadcast TV in a frame specified by the TVattribute.

One embodiment of the invention supports the presentation of televisionin the background of an HTML document. In that embodiment, HTML tagscorresponding to overlying HTML content are provided with an attributethat defines a level of transparency. The transparency attribute allowscontent providers to overlay any type of HTML information over abroadcast television show without completely obscuring the underlyingshow. This aspect of the invention also employs a z attribute that canbe used to specify the relative position of broadcast television andoverlying HTML content.

Other features of the present invention will be apparent from theaccompanying drawings and from the following detailed description.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 (prior art) is a flowchart 100 depicting how a conventionalbrowser or Internet terminal renders a stream of HTML data 110 todisplay a Web page 120.

FIG. 2 depicts a video display 200 displaying a background video image210 overlaid with a transparent HTML image 220.

FIG. 3 is a block diagram illustrating a system 300 for blending agraphic overlay window with a background video image in accordance withthe invention.

FIG. 4 is a flowchart 400 depicting the operation of a document buildermodified in accordance with the invention.

FIG. 5 depicts the tree structure of a sample document data structure500 in accordance with the present invention.

FIG. 6 is a flowchart 600 describing the process of adding broadcasttelevision to the background of an HTML page.

FIG. 7 is a flowchart 700 depicting the operation of a view objectmodified in accordance with the invention to accommodate hyperlinks tobroadcast TV.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

FIG. 2 depicts a video display 200 displaying a background video image210 overlaid with a transparent HTML image 220. For illustrativepurposes, video image 210 is a mountain scene that includes a car anddriver, and HTML image 220 is a baseball-game score box. Thetransparency of HTML image 220 permits concurrent viewing of backgroundvideo image 210 and the baseball scores. The following HTML documentdefines the collective HTMI, image 220 and video image 210 in oneembodiment of the invention.

<HTML>  <BODY background=“tv:”> <img src=“scoreimg.png”>  </BODY></HTML>

In accordance with the invention, background video image 210 can be anyvideo image, including broadcast TV. Also in accordance with theinvention, background video image 210 is incorporated into the foregoingHTML page along with HTML image 220 for display on video display 200.Video image 210 and HTML image 220 can thus be transmitted to anInternet terminal as a single HTML page. This allows HTML authors tospecify the source of broadcast TV to be displayed within or behind agiven Web page.

Broadcast TV is added to a page as an object tag using the followingsyntax:

<object data=“tv:” width=“60%” height=“60%”>

The use of the object tag to extend HTML function complies with HTMLSpecification 4.0 “HTML 4.0 Specification, W3C Recommendation,” revisedon Apr. 24, 1999. The HTML Specification is incorporated herein byreference.

TV may also be added to a Web page that uses tables. For example:

<td width=320 height=240 style=“background: url(tv:)”> Here is contentthat is overlaid on top of the TV picture inside this table cell. </td>.

TV added to the background of a Web page is formatted as:

<body style=“background: url(tv:)”>

The foregoing examples were taken from Appendix A of the “AdvancedTelevision Enhancement Forum Specification (ATVEF),” Version 1.1r26(updated Feb. 2, 1999). The ATVEF Specification is incorporated hereinby reference.

HTML image 220 is not limited to simple text. Other potentially usefulgraphic overlays include motion pictures, stock-market price displays,network or affiliate identifier logos, advertisements or announcements,news bulletins, a sketch-pad, a simulated keyboard, or interactive gameboards. Graphic overlay images can include any subject that is usefullyviewed when blended on screen with any other subject and overlaid forconcurrent viewing of both subjects on the same display screen.

FIG. 3 is a block diagram illustrating a system 300 for blending agraphic overlay window with a background video image in accordance withthe invention. Video background source material defines an array ofpixels coextensive with the entire visible portion of display 200. Thispixel array—labeled “VIDEO BROADCAST”—might represent a televisionprogram or other cable, broadcast, satellite, or graphic presentation.

The video broadcast or other remote graphic overlay image data isbuffered in a video buffer 310. An overlay graphic data source 320 feedsdata to an off-screen graphic compositing buffer 330 in which dataprocessing is performed on successive frames of the graphic image toupdate the graphic image as instructed. For example, HTML image 220 ofFIG. 2 could be changed to update the depicted baseball scores. Suchprocessing may be performed, for example, by a microprocessor (notshown) that operates the home entertainment system of which theillustrated overlay and display apparatus is a part.

The contents of off-screen graphic compositing buffer 330 may befiltered in a flicker filter 340 prior to being buffered in an onscreengraphic display buffer 350. Flicker filter 340 filters data presented tooff-screen graphic compositing buffer 330 to reduce flicker. If flickeris not a problem, flicker filter 340 (may be eliminated; as indicated bydashed arrow 355.

Onscreen graphic display buffer 350 and video buffer 310 feed a graphicprocessor 360. Graphic processor 360 blends the two graphic sources toproduce a raster scan signal for presenting blended data on aconventional display 370. Graphic processor 360 may be a special- orgeneral-purpose microprocessor capable of performing graphic operations.Display 370 may be any suitable monochrome or color display.

Video buffer 310 and display buffer 350 feed data to graphic processor360, which blends their contents and presents the results on display370. Such blending is performed using intensity, commonly known as“alpha” information, stored in any suitable format along with theaccompanying pixel information in the onscreen graphic display buffer350. For more information relating to the operation of system 300, seethe co-pending application Ser. No. 09/229,454 entitled “OverlayGraphics Memory Management Method And Apparatus,” by David R. Andersonand Sean M. Callahan, filed Apr. 22, 1999, which is incorporated hereinby reference.

Internet terminals in accordance with the present invention provide thesame functionality as the conventional system described above inconnection with FIG. 1. In one embodiment, the inventive Internetterminal is fully compliant with above-incorporated HTML 4.0Specification. The document builder is modified, however, to interprethyperlinks to broadcast TV and to display background TV behindtransparent HTML content. FIG. 4 is a flowchart 400 depicting theoperation of the modified document builder.

The novel document builder subjects each HTML tag to a sequence ofdecisions that collectively determine what type of information will bedisplayed. These decisions incrementally produce a document datastructure that contains all of the formatting and content informationrequired to render a Web page. An exemplary document data structure isdescribed below in connection with FIG. 5.

Returning to FIG. 4, the first decision 405 upon receipt of an HTML tagdetermines whether the tag is an image tag. If it is, then the documentbuilder begins (or continues) building the document data structure byincluding the requisite information for defining the identified image(step 410). If the HTML tag is not an image tag, the document builderdetermines whether the tag is an object tag (step 420). The term“object,” when referring to object tags, should not be confused withsoftware objects in object-oriented programming. Chapter 13 of theabove-incorporated HTML 4.0 Specification uses the term “object” todescribe things that authors want to place in HTML documents. Othercommonly used terms for such objects are applets, plug-ins, and mediahandlers. The same HTML specification defines “object tags” as elementsthat allow HTML authors to specify everything required by an object forits presentation by a user agent: source code, initial values, andrun-time data.

If the HTML tag is an object tag, the document builder determineswhether the tag includes a URI to a TV resource, such as a “TV URL”(step 430). This feature of the document builder is new, as conventionalHTML pages do not include TV URIs. Like other types of HTML tags, TVtags can include associated attributes. For TV tags, these attributesinclude channel number or network designation, image width, imageheight, “full screen” (i.e., ignore width and height), input source, zposition, and image transparency.

Objects, other than TV objects, are added to the document data structure(step 440). TV tags are examined further to determine whether HTMLattributes associated with the TV tag indicate that the TV object is tobe viewed in the background (step 450).

The relative position of the TV object is determined using z-ordered(three-dimensional) cascading style sheets. As is known in the art,cascading style sheets allow HTML authors to include typographicalinformation to define how a Web page should appear. The presentinvention makes use of a z attribute supported by cascading style sheetsto determine the apparent relative positions of background televisionand overlaying HTML content. To establish broadcast television asbackground, the z attribute of the TV tag is, in one embodiment, set to“Z=−1.” For example:

<div style=“POSITION: ABSOLUTE; Z-INDEX:-1”> <object data=“tv:”height=100% width=100%> </object> </div>

If, in step 450, the z attribute is greater than or equal to zero, thenthe broadcast television associated with the TV tag is embedded in thedocument data structure. If, on the other hand, the z attribute is lessthan zero, then the information required to instantiate broadcast TV inthe background is added to the document data structure (step 470).

If the Internet terminal determines in step 420 that the HTML tag is notan object tag, then the Internet terminal next checks to see whether thetag corresponds to: an anchor (step 480). As is well known, anchors aretags that define a section of text, an icon, or other element as a linkto another element in the document or to another document or file.Anchors are conventionally incorporated into the document data structure(step 490). In accordance with the invention, anchors may comprise a TVURI that identifies a broadcast TV source.

Finally, if the Internet terminal determines in step 480 that the HTMLtag is not an anchor tag, then the Internet terminal continues througheach other type of HTML tag supported by the terminal. If no match isfound, the tag is simply ignored. Otherwise, the terminal conventionallyincorporates the appropriate information into the document datastructure.

FIG. 5 depicts the tree structure of a sample document data structure500 in accordance with the present invention. The document is definedhierarchically as a tree comprising one or more “frames.” Each frame isa section of a displayed Web page —typically rectangular—that is aseparate HTML document from the rest of the page. Web pages can havemultiple frames, each of which is a separate document. Each frame hasthe same capabilities as an unframed Web page, including linking toanother frame or Web site; these capabilities can be used independentlyof other frames on the page.

Document data structure 500 defines a root frame 510, which in turnincludes a score frame 520 and a TV frame 530. Score frame 520 includesthe format and content information required to render transparent HTMLimage 210 of FIG. 2, while TV frame 530 includes the format and contentinformation required to render background video image 210, also of FIG.2.

FIG. 6 is a flowchart 600 describing the process of adding broadcasttelevision to the background of an HTML page. The document datastructure provides this functionality when called upon to render thebackground of an HTML page. The call to render the background typicallycomes from a software object called a “view object.” The view object,allocated a certain about of screen space, conventionally interprets thecontents of the document data structure to render the HTML page on adisplay. For example, the view object keeps track of the scroll positionof a page and the relative placement of one or more overlapping pages.

The document builder first determines whether the background isspecified as TV (step 610). If not, then the document builder determineswhether the background is specified as an image (step 620). If thebackground is an image, then the image is added to the background byfilling display buffer 350 (FIG. 3) with pixels representing the image(step 630). The image may be of any type, from a solid color to aphotograph, for example. If the background is neither TV nor an image,then the document builder fills display buffer 350 with pixels of somedefault color, typically gray (step 640).

Returning to decision 610, if the background is specified as television,then display buffer 350 is filled with “transparent” pixels (step 650).Consequently, the contents of video buffer 310 show through when thecontents of buffers 350 and 310 are combined (FIG. 3). Next, some HTMLcontent, such as HTML image 220 (FIG. 2), is overlaid on the displayedvideo by providing rendered HTML image data to display buffer 350 (step660). The concepts of “background” and “overlay” are not physical, butrefer instead to the apparent positions of displayed images.

In accordance with an embodiment of the invention, all HTML tags areprovided with an attribute that defines a level of transparency. ThisHTML extension complies with the requirements of the above-incorporatedHTML 4.0 Specification. The transparency attribute allows contentproviders to overlay any type of HTML information over motion videowithout completely obscuring the video.

The hardware described in connection with FIG. 3 supports thetransparency attribute. Transparency is conventionally determined usingan “alpha” value for each pixel. In one embodiment, for example, thetransparency of each pixel can have level of from zero to 255, zerocorresponding to total transparency and 255 corresponding to totalopacity. For more information regarding the implementation oftransparent pixels, see the above-incorporated application entitled“Overlay Graphics Memory Management Method and Apparatus.”

FIG. 7 is a flowchart 700 depicting the operation of a view objectmodified in accordance with the invention to accommodate hyperlinks tobroadcast TV. Users execute hyperlinks, typically by selecting them witha mouse or other pointing device. Alternatively, hyperlinks can beexercised automatically upon the loading of a page, or can be triggeredremotely using broadcast trigger messages, or “triggers.” Triggers arebroadcast instructions that generally instruct Internet terminals totake a specific action to synchronize the content of a Web page with abroadcast television program. However a hyperlink is selected, executinga hyperlink initiates a call 710 to the view object.

If the selected link does not refer to a TV resource, as determined instep 720, then the Internet terminal retrieves and displays theinformation resource in a conventional manner (step 730). If theselected hyperlink includes a TV URI, however, then the view objectexamines a channel attribute of the TV URI to determine which channelshould be displayed (step 740). The view object reacts to TV URIs havingnumeric channel attributes (e.g., channel 7) by simply displaying theindicated channel (step 750). An exemplary call to a TV URI might be“href=tv:channel7” for a call to display channel 7.

Channel attributes may identify particular television networks by callletters. For example, the call letters “CNN” could identify the CableNews Network, in which case the call to a TV URI might read“href=tv:cnn.” Because television networks are not shown on the samenumerical channel in every geographic location, call-letter attributesare parsed and mapped to local channels. This is accomplished using aconventional electronic programming guide, which is a database that mapslocal channels to network stations (step 760) using knowledge of aviewer's zip code and local cable provider. The Internet terminaldisplays the appropriate channel once the call letters are parsed (step750). If no call letter or channel is specified, the Internet terminaldisplays the last channel viewed. For example, an HTML anchor forlinking to full-screen TV of the last channel viewed might beinstantiated as <a href=“tv:”>Click here to return to TV</a>.

For additional information about integrating broadcast TV and HTMLcontent, see

-   -   1. “Displaying Television Broadcasts in Web Pages,” published on        the Internet by WebTV, Inc., at    -   2. http://developer.webtv.net/itv/embedtv/main.htm (Jun. 9,        1999; and    -   3. “Creating Interactive Television Links,” published on the        Internet by WebTV, Inc., at        http://developer.webtv.net/itv/links/main.htm (Jun. 9, 1999).        Both of the foregoing documents are incorporated herein by        reference.

While the present invention has been described in connection withspecific embodiments, variations of these embodiments will be apparentto those of skill in the art. Therefore, the spirit and scope of theappended claims should not be limited to- the foregoing description.

1. A method for enabling the display of a television broadcastcontaining video images as part of a markup-language document, themethod comprising one or more microprocessors performing the following:incorporating markup-language tags and markup-language attributes into amark-up language document that together determine the format and contentof the markup-language document; and incorporating an object tag intothe markup-language document that identifies a URI of a televisionresource, the television resource identifying a television broadcastsource; wherein one or more of the markup-language tags include a zattribute specifying a z position for the corresponding one or moremarkup-language tags, and wherein at least one of the one or moremarkup-language tags specifies the z position of the broadcast videoimages to be with respect to other parts of the markup-language documentand wherein the video images of the television broadcast are displayedin accordance with the relative z position specified in the z attributeof the at least one of the one or more mark-up tags.
 2. A method asrecited in claim 1, wherein the markup-language document is received bya system that parses the markup-language data to recover themarkup-language tags, markup-language attributes, and object tag.
 3. Amethod as recited in claim 2, wherein the system displays video imagesof the television broadcast in accordance with the relative z positionspecified in the z attribute of the at least one of the one or moremarkup-language tags.
 4. A method as recited in claim 3, whereindisplaying the video images includes filling a graphic display bufferwith information representing transparent pixels.
 5. A method as recitedin claim 3, wherein displaying the video images includes: storing thevideo images in a video buffer; storing the information representingtransparent pixels in a graphic display buffer; and combining theinformation with the video images.
 6. A method as recited in claim 1,wherein the z attribute indicates that the video images should bedisplayed as background in the markup-language document.
 7. A method asrecited in claim 1, wherein the one or more markup-language tags isassociated with a still image.
 8. A method as recited in claim 1,wherein the at least one of the one or more markup-language tags iseither an object tag or an image tag.
 9. A computer program productcomprising one or more computer-readable media havingcomputer-executable instructions for implementing a method for enablingthe display of a television broadcast containing video images as part ofa markup-language document, the method comprising one or moremicroprocessors performing the following: incorporating markup-languagetags and markup-language attributes into a mark-up language documentthat together determine the format and content of the markup-languagedocument; and incorporating an object tag into the markup-languagedocument that identifies a URI of a television resource, the televisionresource identifying a television broadcast source; wherein one or moreof the markup-language tags include a z attribute specifying a zposition for the corresponding one or more markup-language tags, andwherein at least one of the one or more markup-language tags specifiesthe z position of the broadcast video images to be with respect to otherparts of the markup-language document and wherein the video images ofthe television broadcast are displayed in accordance with the relative zposition specified in the z attribute of the at least one of the one ormore mark-up tags.
 10. A computer program product recited in claim 9,wherein the markup-language document is received by a system that parsesthe markup-language data to recover the markup-language tags,markup-language attributes, and object tag.
 11. A computer programproduct as recited in claim 10, wherein the system displays video imagesof the television broadcast in accordance with the relative z positionspecified in the z attribute of the at least one of the one or moremarkup-language tags.
 12. A computer program product as recited in claim10, wherein displaying the video images includes filling a graphicdisplay buffer with information representing transparent pixels.
 13. Acomputer program product as recited in claim 11, wherein displaying thevideo images includes: storing the video images in a video buffer;storing the information representing transparent pixels in a graphicdisplay buffer; and combining the information with the video images. 14.A computer program product as recited in claim 9, wherein the zattribute indicates that the video images should be displayed asbackground in the markup-language document.
 15. A computer programproduct as recited in claim 9 wherein the one or more markup-languagetags is associated with a still image.
 16. A computer program product asrecited in claim 9, wherein the at least one of the one or moremarkup-language tags is either an object tag or an image tag.
 17. Amethod for displaying a stream of television broadcast video images aspart of a markup-language document, the method comprising one or moremicroprocessors performing the following: incorporating markup-languagetags and markup-language attributes into a mark-up language documentthat together determine the format and content of the markup-languagedocument; and incorporating an object tag into the markup-languagedocument that identifies a URI of a television resource, the televisionresource identifying a television broadcast source; wherein one or moreof the markup-language tags include a transparency attribute specifyinga level of transparency for one or more portions of the markup-languagedocument to overly at least some of the television broadcast videoimages during display and wherein the television broadcast video imagesare displayed and the one or more portions of the markup-languagedocument are overlaid in accordance with the level of transparencyspecified in the transparency attribute of the at least one of themarkup-language tags.
 18. A method as recited in claim 17, wherein themarkup-language document is received by a system that parses themarkup-language data to recover the markup-language tags,markup-language attributes, and object tag.
 19. A method as recited inclaim 18, wherein the system displays video images of the televisionbroadcast and the overlying one or more portions of the markup-languagedocument in accordance with the level of transparency specified in thetransparency attribute of the at least one of the markup-language tags.20. A computer program product comprising one or more computer-readablemedia having computer-executable instructions for implementing a methodfor displaying a stream of television broadcast video images as part ofa markup-language document, the method comprising one or moremicroprocessors performing the following: incorporating markup-languagetags and markup-language attributes into a mark-up language documentthat together determine the format and content of the markup-languagedocument; and incorporating an object tag into the markup-languagedocument that identifies a URI of a television resource, the televisionresource identifying a television broadcast source; wherein one or moreof the markup-language tags include a transparency attribute specifyinga level of transparency for one or more portions of the markup-languagedocument to overly at least some of the television broadcast videoimages during display and wherein the television broadcast video imagesare displayed and the one or more portions of the markup-languagedocument are overlaid in accordance with the level of transparencyspecified in the transparency attribute of the at least one of themarkup-language tags.
 21. A computer program product as recited in claim20, wherein the markup-language document is received by a system thatparses the markup-language data to recover the markup-language tags,markup-language attributes, and object tag.
 22. A computer programproduct as recited in claim 21, wherein the system displays video imagesof the television broadcast and the overlying one or more portions ofthe markup-language document in accordance with the level oftransparency.